﻿
namespace KMT_Pro.Web
{
    using System.Runtime.Serialization;
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.ComponentModel.DataAnnotations;
    using System.Linq;
    using System.ServiceModel.DomainServices.Hosting;
    using System.ServiceModel.DomainServices.Server;
    using System.Data.Objects;


    // MetadataTypeAttribute는 ClientASMetadata을(를)
    // ClientAS 클래스의 추가 메타데이터를 전달하는 클래스로 식별합니다.
    [MetadataTypeAttribute(typeof(ClientAS.ClientASMetadata))]
    public partial class ClientAS
    {

        // 이 클래스를 사용하여 사용자 지정 특성을
        // ClientAS 클래스의 속성에 연결할 수 있습니다.
        //
        // 예를 들어 다음은 Xyz 속성을
        // 필수 속성으로 표시하고 유효한 값의 형식을 지정합니다.
        //    [Required]
        //    [RegularExpression("[A-Z][A-Za-z0-9]*")]
        //    [StringLength(32)]
        //    public string Xyz { get; set; }
        internal sealed class ClientASMetadata
        {

            // 메타데이터 클래스는 초기화를 위한 것이 아닙니다.
            private ClientASMetadata()
            {
            }

            public string ASreason { get; set; }

            public string CompanyID { get; set; }

            public string etc { get; set; }

            public string HardwareID { get; set; }

            public string InsertDate { get; set; }
        }
    }

    // MetadataTypeAttribute는 ClientMasterMetadata을(를)
    // ClientMaster 클래스의 추가 메타데이터를 전달하는 클래스로 식별합니다.
    [MetadataTypeAttribute(typeof(ClientMaster.ClientMasterMetadata))]
    public partial class ClientMaster
    {

        // 이 클래스를 사용하여 사용자 지정 특성을
        // ClientMaster 클래스의 속성에 연결할 수 있습니다.
        //
        // 예를 들어 다음은 Xyz 속성을
        // 필수 속성으로 표시하고 유효한 값의 형식을 지정합니다.
        //    [Required]
        //    [RegularExpression("[A-Z][A-Za-z0-9]*")]
        //    [StringLength(32)]
        //    public string Xyz { get; set; }
        internal sealed class ClientMasterMetadata
        {

            // 메타데이터 클래스는 초기화를 위한 것이 아닙니다.
            private ClientMasterMetadata()
            {
            }

            public string Address { get; set; }

            public string CompanyID { get; set; }

            public string CompanyName { get; set; }

            public string etc { get; set; }

            public int idx { get; set; }

            public string InsertDate { get; set; }

            public string gubun { get; set; }

            public string UpdateDate { get; set; }
        }
    }

    // MetadataTypeAttribute는 ClientPersonMetadata을(를)
    // ClientPerson 클래스의 추가 메타데이터를 전달하는 클래스로 식별합니다.
    [MetadataTypeAttribute(typeof(ClientPerson.ClientPersonMetadata))]
    public partial class ClientPerson
    {

        // 이 클래스를 사용하여 사용자 지정 특성을
        // ClientPerson 클래스의 속성에 연결할 수 있습니다.
        //
        // 예를 들어 다음은 Xyz 속성을
        // 필수 속성으로 표시하고 유효한 값의 형식을 지정합니다.
        //    [Required]
        //    [RegularExpression("[A-Z][A-Za-z0-9]*")]
        //    [StringLength(32)]
        //    public string Xyz { get; set; }
        internal sealed class ClientPersonMetadata
        {

            // 메타데이터 클래스는 초기화를 위한 것이 아닙니다.
            private ClientPersonMetadata()
            {
            }

            public string CompanyID { get; set; }

            public string etc { get; set; }

            public int idx { get; set; }

            public string InsertDate { get; set; }

            public string Name { get; set; }

            public string Phone { get; set; }

            public string Position { get; set; }

            public string Tel { get; set; }

            public string UpdateDate { get; set; }
        }
    }

    // MetadataTypeAttribute는 HardwareMasterMetadata을(를)
    // HardwareMaster 클래스의 추가 메타데이터를 전달하는 클래스로 식별합니다.
    [MetadataTypeAttribute(typeof(HardwareMaster.HardwareMasterMetadata))]
    public partial class HardwareMaster
    {

        // 이 클래스를 사용하여 사용자 지정 특성을
        // HardwareMaster 클래스의 속성에 연결할 수 있습니다.
        //
        // 예를 들어 다음은 Xyz 속성을
        // 필수 속성으로 표시하고 유효한 값의 형식을 지정합니다.
        //    [Required]
        //    [RegularExpression("[A-Z][A-Za-z0-9]*")]
        //    [StringLength(32)]
        //    public string Xyz { get; set; }
        internal sealed class HardwareMasterMetadata
        {

            // 메타데이터 클래스는 초기화를 위한 것이 아닙니다.
            private HardwareMasterMetadata()
            {
            }

            public string ASlimit { get; set; }

            public string CompanyName { get; set; }

            public string CompanyTelNum { get; set; }

            public string etc { get; set; }

            public string HardwareID { get; set; }

            public string HardwareName { get; set; }

            public string HardwareType { get; set; }

            public string InsertDate { get; set; }

            public string UpdateDate { get; set; }
        }
    }

    // MetadataTypeAttribute는 UserMasterMetadata을(를)
    // UserMaster 클래스의 추가 메타데이터를 전달하는 클래스로 식별합니다.

    [MetadataType(typeof(ComboBoxCodeMetadata))]
    public partial class ComboBoxCode
    {
        #region Properties

        /// <summary>
        /// Gets or sets Name.
        /// </summary>
        [DataMember]
        public string Name { get; set; }

        /// <summary>
        /// Gets or sets Type.
        /// </summary>
        [DataMember]
        public string Type { get; set; }

        #endregion
    }

    [MetadataType(typeof(ResultMessageMetadata))]
    public partial class ResultMessage
    {
        #region Properties

        /// <summary>
        /// Gets or sets ExceptionMessage.
        /// </summary>
        [DataMember]
        public string ExceptionMessage { get; set; }

        /// <summary>
        /// Gets or sets a value indicating whether IsSuccess.
        /// </summary>
        [DataMember]
        public bool IsSuccess { get; set; }

        #endregion
    }

    public class ResultMessageMetadata
    {
        [System.ComponentModel.DataAnnotations.Key]
        public string ExceptionMessage { get; set; }
    }

    public class ComboBoxCodeMetadata
    {
        [System.ComponentModel.DataAnnotations.Key]
        public string Name { get; set; }
    }

    [MetadataTypeAttribute(typeof(UserMaster.UserMasterMetadata))]
    public partial class UserMaster
    {

        // 이 클래스를 사용하여 사용자 지정 특성을
        // UserMaster 클래스의 속성에 연결할 수 있습니다.
        //
        // 예를 들어 다음은 Xyz 속성을
        // 필수 속성으로 표시하고 유효한 값의 형식을 지정합니다.
        //    [Required]
        //    [RegularExpression("[A-Z][A-Za-z0-9]*")]
        //    [StringLength(32)]
        //    public string Xyz { get; set; }
        internal sealed class UserMasterMetadata
        {

            // 메타데이터 클래스는 초기화를 위한 것이 아닙니다.
            private UserMasterMetadata()
            {
            }

            public string ID { get; set; }

            public int idx { get; set; }

            public string PASS { get; set; }

            public string Position { get; set; }

            public string UserName { get; set; }
        }
    }

    [MetadataTypeAttribute(typeof(SP_Login_Check_Result.SP_Login_Check_ResultMetadata))]
    public partial class SP_Login_Check_Result
    {
        internal sealed class SP_Login_Check_ResultMetadata
        {
            private SP_Login_Check_ResultMetadata(string ID, string PASS) { }
            [Key]
            public string Status { get; set; }
        }
    }

    [MetadataType(typeof(SP_ClientMaster_Select_ResultMetadata))] 
    public partial class SP_ClientMaster_Select_Result 
    { 
    } 
 
    public class SP_ClientMaster_Select_ResultMetadata 
    { 
        [System.ComponentModel.DataAnnotations.Key] 
        public string CompanyID {get; set; } 
    }

    

    [MetadataType(typeof(SP_ClientUserMaster_Select_ResultMetadata))]
    public partial class SP_ClientUserMaster_Select_Result
    {
    }

    public class SP_ClientUserMaster_Select_ResultMetadata
    {
        [System.ComponentModel.DataAnnotations.Key]
        public string idx { get; set; }
    }

    [MetadataType(typeof(SP_HardwareMaster_Select_ResultMetadata))]
    public partial class SP_HardwareMaster_Select_Result
    {
    }

    public class SP_HardwareMaster_Select_ResultMetadata
    {
        [System.ComponentModel.DataAnnotations.Key]
        public string HardwareID { get; set; }
    }

    [MetadataType(typeof(SP_UserMenuSelect_ResultMetadata))]
    public partial class SP_UserMenuSelect_Result
    {
    }

    public class SP_UserMenuSelect_ResultMetadata
    {
        [System.ComponentModel.DataAnnotations.Key]
        public int idx { get; set; }
    }

    //[MetadataTypeAttribute(typeof(SP_ClientMaster_Select_Result.SP_ClientMaster_Select_ResultMetadata))]
    //public partial class SP_ClientMaster_Select_Result
    //{
    //    internal sealed class SP_ClientMaster_Select_ResultMetadata
    //    {
    //        private SP_ClientMaster_Select_ResultMetadata() { }
    //        [Key]
    //        public string CompanyID { get; set; }
    //    }
    //}

    //[MetadataTypeAttribute(typeof(ResultMessage))]
    //public partial class ResultMessageClientInsert
    //{
    //    internal sealed class ResultMessageClientInsertMetadata
    //    {
    //        private ResultMessageClientInsertMetadata() { }
    //        [Key]
    //        public ObjectParameter Status { get; set; }
    //    }
    //}
}
